package com.kujie.utils;

public class TextUtil{
    
    /**
     * 提取文本最后一行的有效指令
     * @param text 输入文本
     * @return 最后一行的有效指令
     */
    public static String getLastCommand(String text) {
        if (text == null || text.isEmpty()) {
            return "未知";
        }
        
        // 按换行符分割
        String[] lines = text.split("\\n");
        
        // 从数组末尾开始查找
        for (int i = lines.length - 1; i >= 0; i--) {
            String line = lines[i].trim();
            
            // 跳过空行和<think>标签行
            if (!line.isEmpty() && 
                !line.startsWith("<think>") && 
                !line.startsWith("</think>") && 
                !line.startsWith("用户上下文:")) {
                
                // 验证是否为有效的指令类型
                if (isValidCommand(line)) {
                    return line;
                }
            }
        }
        
        return "未知";
    }
    
    /**
     * 验证是否为有效的指令类型
     * @param command 待验证的指令
     * @return 是否有效
     */
    private static boolean isValidCommand(String command) {
        String[] validCommands = {
            "灯光查询", "空调查询", "能耗查询", "厕所状态查询",
            "天气查询", "路线查询", "空调控制", "灯光控制",
            "园区查询", "未知"
        };
        
        for (String validCommand : validCommands) {
            if (validCommand.equals(command)) {
                return true;
            }
        }
        
        return false;
    }
}
